package org.jeecg.modules.tz.mapper;

import java.util.List;
import java.util.Map;

import org.apache.ibatis.annotations.*;
import org.jeecg.modules.tz.entity.TzNetwork;
import com.baomidou.mybatisplus.core.mapper.BaseMapper;

/**
 * @Description: tz_network
 * @Author: jeecg-boot
 * @Date:   2024-08-26
 * @Version: V1.0
 * column, 主表中的列名，这个列的值要作为查询参数传给子查询。
 * property，代表子查询的查询结果关联的实体属性，就是UserVo中的roles字段。
 */
public interface TzNetworkMapper extends BaseMapper<TzNetwork> {
    //OneToMany一对多查询
    @Select("select * from tz_network")
    @Results({
            @Result(column = "id" /* 这里的id是要传递给下面查询里需要的参数 */,   //<2>
                    property = "TzNetworkItems" /* 这里是TzNetwork类里的要关联的字段 */,
                    many=@Many(
                    select = "org.jeecg.modules.tz.mapper.TzNetworkItemMapper.getListByNetworkId"
            ))
    })
    List<TzNetwork> listAllNetWork();

    @Select("select * from tz_network where id = #{id}" )
    @Results({
            @Result(column = "id" /* 这里的id是要传递给下面查询里需要的参数 */,   //<2>
                    property = "TzNetworkItems" /* 这里是TzNetwork类里的要关联的字段 */,
                    many=@Many(
                            select = "org.jeecg.modules.tz.mapper.TzNetworkItemMapper.getListByNetworkId"
                    ))
    })
    TzNetwork listNetWorkById(String id);
}
